﻿var edit = -1;
var permissao;
$(document).ready(function () {
    $(".nav li").removeClass("active");
    $(".nav li.orcamento").addClass("active");

    var width = $(".container").width();

    var colModel = [
            { display: 'CÓD', name: 'id_orcamento', width: width * 0.08, sortable: true, align: 'center' },
            { display: 'Nome', name: 'nome', width: width * 0.25, sortable: true, align: 'center' },
            { display: 'Usuário', name: 'login', width: width * 0.16, sortable: true, align: 'center' },
            { display: 'Procedimento', name: 'nome_procedimento', width: width * 0.20, sortable: true, align: 'center' },
            { display: 'Duração', name: 'tempo_tratamento', width: width * 0.05, sortable: true, align: 'center' },
            { display: 'Valor parcela', name: 'valor_parcela', width: width * 0.08, sortable: true, align: 'center' },
            { display: 'Valor total', name: 'valor_total', width: width * 0.08, sortable: true, align: 'center' }
    ];

    var buttons = [
            { name: 'Adicionar', bclass: 'add', onpress: addToTable },
            { name: 'Editar', bclass: 'edit', onpress: editTable },
            { name: 'Remover', bclass: 'delete', onpress: deleteFromTable }
    ];

    var searchitems = [
        { display: 'CÓD', name: 'id_orcamento' },
        { display: 'Nome', name: 'nome', isdefault: true },
        { display: 'Usuário', name: 'login' },
        { display: 'Procedimento', name: 'nome_procedimento' }
    ];

    insereGrid("grid", "Orcamento.aspx/getDados", colModel, buttons, searchitems, "Orçamento", "id_orcamento", "asc", true, width, parseInt(screen.availHeight * 0.49));

    $(".real").focus(function () { $(this).val(''); });
    document.getElementById("selectID").selectedIndex = -1;
    document.getElementById("procedimento").selectedIndex = -1;

    $("#data").mask("99/99/9999");
    $("#cpf").mask("999.999.999-99");
    $("#rg").mask("99.999.999-9");

    permissao = getPermissao();
});

function getPermissao() {
    var ret;
    $.ajax({
        type: 'POST',
        url: 'Comparecimento.aspx/getPermissao',
        dataType: 'json',
        async: false,
        contentType: "application/json; charset=utf-8",
        success: function (data) {
            ret = data.d;
        }
    });
    return ret;
}

function addToTable() {
    if (permissao == 0) {
        alert("Você possui permissão apenas para visualização do sistema");
    } else {
        $('#formulario').modal('show');
        $('#tabCadastro a:first').tab('show');
    }
}

function verificaCampos(p1, p2, p3, p4, p5) {
    if ((p1 === "") || (p2 === "") || (p3 === "") || (p4 === "") || (p5 === "")) {
        return false
    } else {
        return true;
    }
}

function ConfirmAddButton() {
    var registro = "";
    registro += $("#selectID").val() + "|";
    registro += $("#procedimento").val() + "|";
    registro += $("#duracao").val() + "|";
    registro += $("#valor_parcela").val() + "|";
    registro += $("#valor_total").val();

    var p1 = $("#selectID").val();
    var p2 = $("#procedimento").val();
    var p3 = $("#duracao").val();
    var p4 = $("#valor_parcela").val();
    var p5 = $("#valor_total").val();

    if (verificaCampos(p1,p2,p3,p4,p5)) {
        if (edit == -1) {
            $.ajax({
                type: 'POST',
                url: 'Orcamento.aspx/addToTable',
                data: "{dados:'" + registro + "'}",
                dataType: 'json',
                contentType: "application/json; charset=utf-8",
                success: function (data) {
                    $("#grid").flexReload();
                    CancelButton();
                }
            });
        }
        else {
            $.ajax({
                type: 'POST',
                url: 'Orcamento.aspx/editTable',
                data: "{id:" + edit + ", dados:'" + registro + "'}",
                dataType: 'json',
                contentType: "application/json; charset=utf-8",
                success: function (data) {
                    $("#grid").flexReload();
                    edit = -1;
                    CancelButton();
                }
            });
        }
    } else {
        alert("Preencha todos os campos");
    }
}

function CancelButton() {
    edit = -1;
    $("#formulario").modal('toggle');
    $(".tab-pane input").val('');
    document.getElementById("selectID").selectedIndex = -1;
    document.getElementById("procedimento").selectedIndex = -1;
}

function editTable() {
    if (permissao == 0) {
        alert("Você possui permissão apenas para visualização do sistema");
    } else {
        var id = $(".flexigrid .trSelected td:eq(0)").text();
        if (id == "")
            alert('Nenhum orçamento foi selecionado para edição');
        else {
            $.ajax({
                type: 'POST',
                url: 'Orcamento.aspx/getDataFromOrc',
                data: "{id:" + id + "}",
                dataType: 'json',
                contentType: "application/json; charset=utf-8",
                success: function (data) {
                    if (data.d != "") {
                        var retorno = data.d.split('|');

                        $("#usuario").text(retorno[2]);
                        $("#duracao").val(retorno[4]);
                        $("#valor_parcela").val(retorno[5]);
                        $("#valor_total").val(retorno[6]);
                        var index = 0;
                        $("#selectID option").each(function () {
                            if ($(this).text() == retorno[1])
                                document.getElementById("selectID").selectedIndex = index;
                            ++index;
                        });
                        index = 0;
                        $("#procedimento option").each(function () {
                            if ($(this).text() == retorno[3])
                                document.getElementById("procedimento").selectedIndex = index;
                            ++index;
                        });
                        edit = id;
                        addToTable();
                    }
                }
            });
        }
    }
}

function deleteFromTable() {
    if (permissao == 0) {
        alert("Você possui permissão apenas para visualização do sistema");
    } else {
        var id = $(".flexigrid .trSelected td:eq(0)").text();
        if (id == "")
            alert('Nenhum orçamento foi selecionado para exclusão');
        else if (confirm('Todas as informações do Orçamento selecionado serão excluídas')) {
            $.ajax({
                type: 'POST',
                url: 'Orcamento.aspx/deleteFromTable',
                data: "{id:" + id + "}",
                dataType: 'json',
                contentType: "application/json; charset=utf-8",
                success: function (data) {
                    $("#grid").flexReload();
                }
            });
        }
    }
}